At least some example embodiments of the inventive concepts described herein relate to a semiconductor memory device, and more particularly, relate to a data storage device and a data processing method thereof.
A flash memory device is widely used as a medium of storing voice and image data in information devices such as a computer, a smart phone, a PDA, a digital camera, a camcorder, a voice recorder, an MP3 player, etc. The flash memory device must be erased before data is stored therein, and is characterized in that a data erase unit is larger than a data write unit. In the event that the flash memory device is used as an auxiliary storage device, such a characteristic restricts a file system for a hard disk drive to be used without modification. In addition, such a characteristic implies that a sequential input/output processing operation of the flash memory device is more effective than a non-sequential input/output processing operation.
A typical example of a flash memory based mass storage device is a solid state drive (hereinafter, referred to as SSD). The different uses of the SSD increase together with an explosive increase in demand. For example, the different uses of the SSD may be subdivided into SSD for server, SSD for client, SSD for data center, etc. An interface of the SSD must provide optimal speed and reliability according to the use. Interfaces such as serial advanced technology attachment (SATA), peripheral component interconnect express (PCIe), serial attached small computer system interface (SAS), etc. are used as an optimal SSD interface to satisfy such requirements. In particular, non-volatile memory express (NVMe) in PCIe-based interface series has been researched and applied.
In the SSD, requests are generally divided into a sequential access request and a random access request. The SSD communicates with a host through a channel. Although a sequential input/output request is transferred from the host by a multi-thread based application program, the SSD does not recognize stream data. Since the SSD recognizes sequential data as random data, the likelihood that the sequential data is processed as random data is high. A method for processing multi-stream data efficiently may be desirable in consideration of importance of multimedia data of input/output data on the SSD.